# From "Thinking in C++, 2nd Edition, Volume 2" 
# by Bruce Eckel & Chuck Allison
# Available at http://www.BruceEckel.com
# (c)2004 MindView Inc. Copyright notice in Copyright.txt
# Automatically-generated MAKEFILE 
# For examples in directory .\C03
# Invoke with: make compiler-name
# or: make clean

ifneq ($(MAKECMDGOALS),clean)
include ../$(MAKECMDGOALS).mac
endif

.SUFFIXES : .cpp .$(OBJEXT) .exe


Borland:  \
	StringSuite.exe \
	StringStorage.exe \
	SmallString.exe \
	SmallString2.exe \
	StringIterators.exe \
	UhOh.exe \
	StrSize.exe \
	StringReplace.exe \
	Replace.exe \
	ReplaceAndGrow.exe \
	ReplaceAll.$(OBJEXT) \
	ReplaceAllTest.exe \
	StringCharReplace.exe \
	AddStrings.exe \
	Sieve.exe \
	Find.exe \
	Rparse.exe \
	TrimTest.$(OBJEXT) \
	TrimTestMain.exe \
	HTMLStripper.exe \
	CompStr.exe \
	Equivalence.exe \
	Compare.exe \
	Compare2.exe \
	StringIndexing.exe \
	BadStringIndexing.exe \
	ICompare.exe \
	IWCompare.exe \
	ExtractCode.exe \
	TESTHEADER_Trace.exe \
	TESTHEADER_StringStorage.exe \
	TESTHEADER_ReplaceAll.exe \
	TESTHEADER_Sieve.exe \
	TESTHEADER_Find.exe \
	TESTHEADER_Rparse.exe \
	TESTHEADER_Trim.exe \
	TESTHEADER_TrimTest.exe \
	TESTHEADER_CompStr.exe \
	TESTHEADER_ichar_traits.exe \
	TESTHEADER_iwchar_traits.exe

Microsoft:  \
	StringSuite.exe \
	Tracetst.exe \
	StringStorage.exe \
	SmallString.exe \
	SmallString2.exe \
	StringIterators.exe \
	UhOh.exe \
	StrSize.exe \
	StringReplace.exe \
	Replace.exe \
	ReplaceAndGrow.exe \
	ReplaceAll.$(OBJEXT) \
	ReplaceAllTest.exe \
	StringCharReplace.exe \
	AddStrings.exe \
	Sieve.exe \
	Find.exe \
	Rparse.exe \
	TrimTest.$(OBJEXT) \
	TrimTestMain.exe \
	HTMLStripper.exe \
	CompStr.exe \
	Equivalence.exe \
	Compare.exe \
	Compare2.exe \
	StringIndexing.exe \
	BadStringIndexing.exe \
	ICompare.exe \
	IWCompare.exe \
	TESTHEADER_Trace.exe \
	TESTHEADER_StringStorage.exe \
	TESTHEADER_ReplaceAll.exe \
	TESTHEADER_Sieve.exe \
	TESTHEADER_Find.exe \
	TESTHEADER_Rparse.exe \
	TESTHEADER_Trim.exe \
	TESTHEADER_TrimTest.exe \
	TESTHEADER_CompStr.exe \
	TESTHEADER_ichar_traits.exe \
	TESTHEADER_iwchar_traits.exe

g++:  \
	StringSuite.exe \
	Tracetst.exe \
	StringStorage.exe \
	SmallString.exe \
	SmallString2.exe \
	StringIterators.exe \
	UhOh.exe \
	StrSize.exe \
	StringReplace.exe \
	Replace.exe \
	ReplaceAndGrow.exe \
	ReplaceAll.$(OBJEXT) \
	ReplaceAllTest.exe \
	StringCharReplace.exe \
	AddStrings.exe \
	Sieve.exe \
	Find.exe \
	Rparse.exe \
	TrimTest.$(OBJEXT) \
	TrimTestMain.exe \
	HTMLStripper.exe \
	CompStr.exe \
	Equivalence.exe \
	Compare.exe \
	Compare2.exe \
	StringIndexing.exe \
	BadStringIndexing.exe \
	ICompare.exe \
	ExtractCode.exe \
	TESTHEADER_Trace.exe \
	TESTHEADER_StringStorage.exe \
	TESTHEADER_ReplaceAll.exe \
	TESTHEADER_Sieve.exe \
	TESTHEADER_Find.exe \
	TESTHEADER_Rparse.exe \
	TESTHEADER_Trim.exe \
	TESTHEADER_TrimTest.exe \
	TESTHEADER_CompStr.exe \
	TESTHEADER_ichar_traits.exe

edg:  \
	StringSuite.exe \
	Tracetst.exe \
	StringStorage.exe \
	SmallString.exe \
	SmallString2.exe \
	StringIterators.exe \
	UhOh.exe \
	StrSize.exe \
	StringReplace.exe \
	Replace.exe \
	ReplaceAndGrow.exe \
	ReplaceAll.$(OBJEXT) \
	ReplaceAllTest.exe \
	StringCharReplace.exe \
	AddStrings.exe \
	Sieve.exe \
	Find.exe \
	Rparse.exe \
	TrimTest.$(OBJEXT) \
	TrimTestMain.exe \
	HTMLStripper.exe \
	CompStr.exe \
	Equivalence.exe \
	Compare.exe \
	Compare2.exe \
	StringIndexing.exe \
	BadStringIndexing.exe \
	ICompare.exe \
	IWCompare.exe \
	TESTHEADER_Trace.exe \
	TESTHEADER_StringStorage.exe \
	TESTHEADER_ReplaceAll.exe \
	TESTHEADER_Sieve.exe \
	TESTHEADER_Find.exe \
	TESTHEADER_Rparse.exe \
	TESTHEADER_Trim.exe \
	TESTHEADER_TrimTest.exe \
	TESTHEADER_CompStr.exe \
	TESTHEADER_ichar_traits.exe \
	TESTHEADER_iwchar_traits.exe

Metrowerks:  \
	StringSuite.exe \
	Tracetst.exe \
	StringStorage.exe \
	SmallString.exe \
	SmallString2.exe \
	StringIterators.exe \
	UhOh.exe \
	StrSize.exe \
	StringReplace.exe \
	Replace.exe \
	ReplaceAndGrow.exe \
	ReplaceAll.$(OBJEXT) \
	ReplaceAllTest.exe \
	StringCharReplace.exe \
	AddStrings.exe \
	Sieve.exe \
	Find.exe \
	Rparse.exe \
	TrimTest.$(OBJEXT) \
	TrimTestMain.exe \
	HTMLStripper.exe \
	CompStr.exe \
	Equivalence.exe \
	Compare.exe \
	Compare2.exe \
	StringIndexing.exe \
	BadStringIndexing.exe \
	ICompare.exe \
	IWCompare.exe \
	ExtractCode.exe \
	TESTHEADER_Trace.exe \
	TESTHEADER_StringStorage.exe \
	TESTHEADER_ReplaceAll.exe \
	TESTHEADER_Sieve.exe \
	TESTHEADER_Find.exe \
	TESTHEADER_Rparse.exe \
	TESTHEADER_Trim.exe \
	TESTHEADER_TrimTest.exe \
	TESTHEADER_CompStr.exe \
	TESTHEADER_ichar_traits.exe \
	TESTHEADER_iwchar_traits.exe

DigitalMars:  \
	StringSuite.exe \
	Tracetst.exe \
	StringStorage.exe \
	SmallString.exe \
	SmallString2.exe \
	StringIterators.exe \
	UhOh.exe \
	StrSize.exe \
	StringReplace.exe \
	Replace.exe \
	ReplaceAndGrow.exe \
	ReplaceAll.$(OBJEXT) \
	ReplaceAllTest.exe \
	StringCharReplace.exe \
	AddStrings.exe \
	Sieve.exe \
	Find.exe \
	Rparse.exe \
	TrimTest.$(OBJEXT) \
	TrimTestMain.exe \
	HTMLStripper.exe \
	CompStr.exe \
	Equivalence.exe \
	Compare.exe \
	Compare2.exe \
	StringIndexing.exe \
	BadStringIndexing.exe \
	ICompare.exe \
	IWCompare.exe \
	ExtractCode.exe \
	TESTHEADER_Trace.exe \
	TESTHEADER_StringStorage.exe \
	TESTHEADER_ReplaceAll.exe \
	TESTHEADER_Sieve.exe \
	TESTHEADER_Find.exe \
	TESTHEADER_Rparse.exe \
	TESTHEADER_Trim.exe \
	TESTHEADER_TrimTest.exe \
	TESTHEADER_CompStr.exe \
	TESTHEADER_ichar_traits.exe \
	TESTHEADER_iwchar_traits.exe

CodeWizard:
	CodeWizard *.cpp

clean:
ifeq ($(notdir $(SHELL)),COMMAND.COM)
	del *.o
	del *.obj
	del *.exe
	del *.tds
	del *.map
else
	rm -f *.o *.obj *.exe *.tds *.map
endif


StringSuite.exe: ../TestSuite/Test.$(OBJEXT) ../TestSuite/Suite.$(OBJEXT) TrimTest.$(OBJEXT) StringSuite.$(OBJEXT)
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

StringSuite.$(OBJEXT): StringSuite.cpp

Tracetst.exe: Tracetst.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

StringStorage.exe: ../TestSuite/Test.$(OBJEXT) StringStorage.$(OBJEXT)
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

StringStorage.$(OBJEXT): StringStorage.cpp

SmallString.exe: SmallString.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

SmallString2.exe: SmallString2.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

StringIterators.exe: StringIterators.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

UhOh.exe: UhOh.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

StrSize.exe: StrSize.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

StringReplace.exe: StringReplace.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Replace.exe: Replace.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

ReplaceAndGrow.exe: ReplaceAndGrow.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

ReplaceAll.$(OBJEXT): ReplaceAll.cpp


ReplaceAllTest.exe: ReplaceAll.$(OBJEXT) ReplaceAllTest.$(OBJEXT)
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

ReplaceAllTest.$(OBJEXT): ReplaceAllTest.cpp

StringCharReplace.exe: StringCharReplace.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

AddStrings.exe: AddStrings.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Sieve.exe: ../TestSuite/Test.$(OBJEXT) Sieve.$(OBJEXT)
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Sieve.$(OBJEXT): Sieve.cpp

Find.exe: ../TestSuite/Test.$(OBJEXT) Find.$(OBJEXT)
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Find.$(OBJEXT): Find.cpp

Rparse.exe: ../TestSuite/Test.$(OBJEXT) Rparse.$(OBJEXT)
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Rparse.$(OBJEXT): Rparse.cpp

TrimTest.$(OBJEXT): TrimTest.cpp


TrimTestMain.exe: ../TestSuite/Test.$(OBJEXT) TrimTest.$(OBJEXT) TrimTestMain.$(OBJEXT)
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

TrimTestMain.$(OBJEXT): TrimTestMain.cpp

HTMLStripper.exe: ReplaceAll.$(OBJEXT) HTMLStripper.$(OBJEXT)
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^

HTMLStripper.$(OBJEXT): HTMLStripper.cpp

CompStr.exe: ../TestSuite/Test.$(OBJEXT) CompStr.$(OBJEXT)
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

CompStr.$(OBJEXT): CompStr.cpp

Equivalence.exe: Equivalence.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Compare.exe: Compare.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

Compare2.exe: Compare2.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

StringIndexing.exe: StringIndexing.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

BadStringIndexing.exe: BadStringIndexing.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

ICompare.exe: ICompare.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

IWCompare.exe: IWCompare.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

ExtractCode.exe: ExtractCode.cpp


TESTHEADER_Trace.exe: TESTHEADER_Trace.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

TESTHEADER_StringStorage.exe: TESTHEADER_StringStorage.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

TESTHEADER_ReplaceAll.exe: TESTHEADER_ReplaceAll.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

TESTHEADER_Sieve.exe: TESTHEADER_Sieve.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

TESTHEADER_Find.exe: TESTHEADER_Find.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

TESTHEADER_Rparse.exe: TESTHEADER_Rparse.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

TESTHEADER_Trim.exe: TESTHEADER_Trim.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

TESTHEADER_TrimTest.exe: TESTHEADER_TrimTest.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

TESTHEADER_CompStr.exe: TESTHEADER_CompStr.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

TESTHEADER_ichar_traits.exe: TESTHEADER_ichar_traits.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

TESTHEADER_iwchar_traits.exe: TESTHEADER_iwchar_traits.cpp
	$(CPP) $(CPPFLAGS) $(EXEFLAG)$@ $^
	$@

